package org.cht.dao;

import org.cht.model.Technology;

import java.util.List;

/**
 * Copyright (C) 2007 Cape Henry Technologies Inc.
 * <p/>
 * This program is open software. It is licensed using the Apache Software
 * Foundation, version 2.0 January 2004
 * <p/>
 * <a href="mailto:dlwhitehurst@gmail.com">dlwhitehurst@gmail.com</a>
 *
 * @author David L. Whitehurst
 * @version 1.0
 */
public interface TechnologyDao extends GenericDao<Technology, Long> {

    /**
     * Gets the complete list of technologies ordered by name.
     *
     * @return List populated list of technologies
     */
    List<Technology> getTechnologies();


    /**
     * Gets the list of technologies by developer id (key)
     *
     * @param developerId
     * @return List populated list of technologies
     */
    List<Technology> getTechnologiesByDeveloperId(Long developerId);

    

    /**
     * Saves a technologie's information.
     * @param technology the object to be saved
     * @return the persisted Technology object
     */
    Technology saveTechnology(Technology technology);

}
